﻿#建议保存编码为：bom头 + utf8
#Requires -RunAsAdministrator
param
(
	[parameter(Mandatory = $true)]
	[ValidateNotNullOrEmpty()]
	[Alias("file")][String]$文件名
)

if ($IsLinux -eq $True)
{
	exit 1
}

if (Test-Path -LiteralPath $文件名)
{

}
else
{
	Write-Error '错误：找不到目标文件。错误码2 '
	exit 2
}

if ( ($IsWindows -eq $True) -or ($PSVersionTable.psversion.major -lt 6) ) #win
{
	$文件权限 = Get-Acl -Path $文件名

	$用户名 = "$env:USERNAME"
	$完全控制 = "FullControl"
	$允许 = [System.Security.AccessControl.AccessControlType]::Allow
	$允许下级继承 = [System.Security.AccessControl.InheritanceFlags]::None
	$未知 = [System.Security.AccessControl.PropagationFlags]::None
	$规则1 = New-Object System.Security.AccessControl.FileSystemAccessRule ($用户名,$完全控制,$允许下级继承,$未知,$允许)
	$文件权限.SetAccessRule($规则1)

	$文件权限.SetAccessRuleProtection($true, $false) #关闭继承

	Set-Acl -Path $文件名 -AclObject $文件权限
}




